//
//  YDDDeviceInfo.h
//  yddSweet
//
//  Created by Dev on 2024/8/15.
//

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

@interface YDDDeviceInfo : NSObject

/// 设备唯一标识符（卸载后无效，基于NSUserDefaults）
+ (NSString *)uuid_ydd;

/// 获取音频文件的个数
+ (NSInteger)yddGetAudioCount;

/// 获取视频文件的个数
+ (NSInteger)yddGetVideoCount;

/// 获取设备型号
+ (NSString *)yddGetDeviceIdentifier;

/// 是否是模拟器
+ (NSInteger)yddIsSimulator;

/// 总空间
+ (NSString *)yddTotalDiskSpace;

/// 可用空间
+ (NSString *)yddFreeDiskSpace;

/// 已使用空间
+ (NSString *)yddUsedDiskSpace;

/// wifi名称 获取不到传空
+(NSString *)yddGetWiFiName;

/// 上次活跃时间戳(秒)
+ (NSString *)yddLastRecordTime;

/// 开机时间到现在的毫秒数（包括睡眠时间）
+ (NSInteger)yddGetElapsedMillisecondsSinceBootAsInteger;

/// 获取mac地址
+ (NSString *)yddMacAddress;

/// 获取设备是否设置了代理
+ (BOOL)yddGetProxyStatusWithDomain:(NSString *)domain_ydd;

/// 获取设备是否设置了VPN
+ (BOOL)yddIsVPNEnabled;

/// 获取当前设备运营商无线接入技术
+ (NSString *)yddGetCurrentCarrierRadioAccessTechnology;

/// cpu核数
+ (NSUInteger)yddGetNumberOfCPUCores;

/// 可清理内存
+ (NSString *)yddFreeMemoryInBytes;

/// 不活动内存大小
+ (NSString *)yddGetInactiveMemorySizeInBytes;

/// 活动内存大小
+ (NSString *)yddGetCurrentMemoryUsageInBytes;

/// 保留内存 单位Byte
+ (NSString *)yddGetWiredMemorySizeInBytes;

/// 是否支持VOIP
+ (BOOL)yddAllowsVOIP;

/// 网络类型 2G、3G、4G、5G、wifi、other、none
+ (NSString *)yddGetNetworkType;

/// 手机国家码
+ (NSString *)yddGetMobileCountryCode;

/// 获取载体名
+ (NSString *)yddGetCarrierName;


+ (NSString *)yddStorage;
+ (NSString *)yddUsedMemory;
+ (NSString *)yddFreeMemory;
+ (NSString *)yddUnuseStorage;
// 可释放的内存空间：内存吃紧自动释放，针对大对象存放所需的大块内存空间
+ (NSString *)yddPurgableMemory;

@end

NS_ASSUME_NONNULL_END
